/**************************************************************************
 * @doc CORE
 * @module Table.H |  
 * Header file for Source code that handles the Function table Flexi record 
 * and the function array.
 *
 * Product     :   SoftPay 2000 (Global Payment Methodology).
 * <nl>Developer   :   
 * <nl>Notes       :
 *
 * @head3 Core Functions |
 * @index | Core
 * @end
 *
 * Copyright (c) 1996-2000 by VeriFone Inc. All rights reserved.
 * 
 * No part of this software may be used, stored, compiled, reproduced,
 * modified, transcribed, translated, transmitted, or transferred, in any form 
 * or by any means whether electronic, mechanical, magnetic, optical, 
 * or otherwise, without the express prior written permission of VeriFone, Inc.
 *
 * Revision History
 * ------------------------------------------------------------------------
 $Log: /SoftPay/SPK2SIM/Source/Include/table.h $
 ********************************************************************************/

#ifndef VSTABLE_H
#define VSTABLE_H

#include <define.h>  // for the PFI references
#include <transact.h>
#define HOST0_FUNCS         5

#define END_OF_FUNC_TABLE   -1

extern  PFI inGetFunctionPointer(unsigned short  inFieldID);
extern int inAddFunctionPointer(unsigned short  inFieldID, PFI_TO pvdFuncPtr);
extern int inOverloadFieldID(unsigned short  inFieldID, PFI_TO pvdFuncPtr);
extern int inGetMessageFileName(short  inFieldID, char *pszNameBuffer);
extern int inAddMessageFileName(short  inFieldID, char *pchMsgFileName);
extern int inChkFileExist (const char *szFileName);

#define MIN_FLEXI_REC_SIZE  6000 
#define INT_POINTER_SIZE    sizeof(int *)
#define MSG_FILE_NAME_SIZE  5

typedef struct TagFUNCTION_TABLE
{
    PFI pinFunction;
    short  inFieldID;
    
}FUNCTION_TABLE;

typedef struct TagMSG_FILE_NAME_TABLE
{
    char *pszMsgFileName;
    short  inFieldID;
    
}MSG_FILE_NAME_TABLE;


#endif /* VSTABLE_H */

